package com.paradogs.common._cfg;

import lombok.*;
import lombok.experimental.*;
import java.util.*;

public class Cfg {
    <%for(let k = 0; k < td.length; k++) {%>
        @Getter
        @ToString
        @Accessors(fluent = true)
        @AllArgsConstructor
        public static class <%- td[k].className %> {
            private static Map<Integer, <%- td[k].className %>> dataMap = new LinkedHashMap<>();
            private static _<%- td[k].className %> $kv;
            public static <%- td[k].className %> get(Integer id) { return dataMap.get(id); }
            public static _<%- td[k].className %> global() { return $kv; }
            public static Collection<<%- td[k].className %>> list() { return dataMap.values(); }
            <%for (let i = 0; i < td[k].columnName.length; i++) {if(!td[k].columnName[i]) {continue} if (!td[k].columnName[i].startsWith('$')) { %>private <%- td[k].columnType[i] %> <%- td[k].columnName[i] %>; // <%- td[k].columnDesc[i] %> <%- td[k].columnRemark[i] %>
            <%}}%>
        }

        @Getter
        @ToString
        @Accessors(fluent = true)
        @AllArgsConstructor
        public static class _<%- td[k].className %> {
            <%for (let i = 0; i < td[k].columnName.length; i++) {if(!td[k].columnName[i]) {continue} if (td[k].columnName[i].startsWith('$')) { %>private <%- td[k].columnType[i] %> <%- td[k].columnName[i].replace('$', '') %>; // <%- td[k].columnDesc[i] %> <%- td[k].columnRemark[i] %>
            <%}}%>
        }
    <%}%>
}